[Linux 驱动]模块加载RTX8025驱动 |
您所在的位置:网站首页 › insmod 加载ko出错 › [Linux 驱动]模块加载RTX8025驱动 |
系统版本:Ubuntu18.04-64 编译器版本:gcc version 7.4.0 (Ubuntu/Linaro 7.4.0-1ubuntu1~18.04.1) uboot版本:2018.07 -linux4sam_6.0 板子型号:at91sama5d3x-xplained MCU型号:sama5d36 RTC型号:RX8025T [Datasheet] RX8025T时钟芯片解读 Linux内核中驱动的方式有很多种实现方式,rtx8025是基于iic总线通讯,会使用内核的总线驱动框架,在次基础上实现驱动功能。 驱动开发在调试阶段很难避免要修修改改,如果源码编译到内核里面,每次修改就需要重新编译内核、烧录内核,然后启动文件系统后,再用应用程序去验证驱动的正确性,效率实在是低下;所以很多聪明的大神就想出一招使用模块的方式,动态把驱动程序加载到内核中,可以动态加载和卸载,对应项目实战开发非常高效,也是工作中必备的技能。 一、内核源码中先屏蔽Rtc8025驱动程序 内核中源码必须把rtx8025驱动不能编译进内核,否则驱动注册进去后,就无法再次加载一个名字相同的驱动文件了。 linux-at91-linux-4.19-at91\drivers\rtc\Makefile文件修改,屏蔽掉编译选项; linux-at91-linux-4.19-at91\drivers\rtc\rtc-rx8025.c就不会编译进内核; 二、把驱动文件复制出来 驱动文件复制一份,做相应的修改 设备树文件添加rtc8025驱动,iic的管脚定义等; i2c2: [email protected] { //根据硬件选择寄存器号,i2c2 dmas = , ; /* Do not use DMA for i2c2 */ pinctrl-0 = ;//管脚定义 status = "okay"; rx8025: [email protected]32 { compatible = "rx8025"; reg = ;//iic器件地址 status = "okay"; }; }; i2c2: [email protected] { compatible = "atmel,at91sam9x5-i2c"; reg = ; interrupts = ; dmas = , ; dma-names = "tx", "rx"; pinctrl-names = "default"; pinctrl-0 = ; #address-cells = ; #size-cells = ; clocks = ; status = "disabled"; }; i2c2 { pinctrl_i2c2: i2c2-0 { atmel,pins = ; /* TWCK2 pin, conflicts with LCDDAT19, ISI_D3 */ }; };设备匹配驱动文件,这里主要依据设备名比对的方式,名称一致,匹配成功。 三、编写对应的Makefile文件,指定内核路径,编译出.ko文件 rtc-8025.c暂时不用修改内核,编译看看是否会报错; 模块驱动的Makefile注意事项 四、加载测试 编译出的ko文件为rtc-rx8025.ko 拷贝到文件系统,修改权限 #chmod 777 rtc-rx8025.ko #insmod rtc-rx8025.ko加载到内核 #hwclock -r查看对应的时钟寄存器 模块驱动就可以调试了。 更多linux知识点推荐: [linux kernel]内核启动阶段控制IO口时序输出 [职场吐槽]如何缓解焦虑 [linux kernel] 内核下ksz8081驱动调试 [linux kernel] 内核下ksz9031驱动调试 [linux kernel]内核图形化裁剪配置 [linux kernel]内核移植过程记录 [linux kernel] 内核启动流程梳理 [linux 底层]u-boot EMMC驱动 [linux 底层]u-boot图形化裁剪配置 [Linux 底层]U-boot ksz9031网络驱动调试 [Linux 底层]U-boot调试命令使用技巧 [Linux 底层]U-boot编译移植 [Linux 底层]U-boot烧录脚本介绍SecureCRT [Linux 底层]bootstrap移植裁剪及编译 [Linux 底层] 平台软件分层介绍 [Linux 驱动] RS485测试程序编写 [Linux 驱动] CAN测试程序编写 推荐阅读: 芯片手册解读 | Linux底层 | 职场吐槽 | C语言视频 关注微信公众号,回复“rtc8025模块驱动”,下载启动文件源代码。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |